package com.qys.livesMall.system.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qys.livesMall.system.model.dto.app.SysConfigSaveReq;
import com.qys.livesMall.system.model.dto.sys.SysConfigQuery;
import com.qys.livesMall.system.model.entity.H2SysConfig;
import com.qys.livesMall.system.model.vo.app.SysConfigGroupVO;
import com.qys.livesMall.system.model.vo.sys.H2SysConfigVO;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author caoz
 * @since 2023-04-20
 */
public interface IH2SysConfigService extends IService<H2SysConfig> {
    int add(H2SysConfigVO params);

    int put(H2SysConfigVO params);

    Page<?> pageList(SysConfigQuery query);

    List<H2SysConfig> listConfigByGroup(int groupId);

    List<SysConfigGroupVO> listGroup();

    int formSave(SysConfigSaveReq data);

    H2SysConfig getConfigByKey(String key);

    /**
     * 通过key查询配置vaule
     * @param key
     * @return
     */
    String getConfigKey(String key);

    Map getConfigKeys(List<String> keys);

    List<String> getConfigServiceAddress();
    List<H2SysConfig> getConfigByKeys(List<String> keys);

}
